Applications registry for a television environment

ABSTRACT

An applications registry provides a repository of television-based applications. The registry stores information about television-based applications registered, and allows users to view information regarding the registered television-based applications through one or more portals. The information includes a general description of the television-based applications, a description of an entitlement model for the television-based applications, and downloading information to permit a user to download the application to the home media system. The user accesses the registry, to view information about the television-based application, through a home media system. The home media system, which includes a television, accesses the portal over a network, such as the Internet.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Patent Application entitled “An Applications Registry For A Television Environment”, having Ser. No. 60/641,878, filed, on Jan. 5, 2005.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is directed toward the field of application software, and more particularly toward a registry for searching, browsing, and provisioning applications and content for a television based platform.

2. Art Background

Application programs run on computers to provide functionality for the computer. Today, there are a large number of application programs that allow computers to perform a wide range of tasks. After purchasing a computer, a typical computer user purchases application programs to provide specific functionality sought by the user. Traditionally, a computer user would locate application programs from a retail store. For example, a computer user may browse the retail store to locate titles of interest. The retail store may organize the application programs into categories, such as “games”, “computer maintenance”, “publishing”, etc.

The Internet provides an on-line market place for the sale of all types of goods, including application programs. Currently, web sites exist to sell application programs. Some web sites provide features to enhance the user's shopping experience. However, these web sites are limited to application programs that run on the computer. In addition, these web sites require computer devices for access.

The present invention provides a registry to access, from a television or computer, application programs suitable for implementation in a television environment.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates one embodiment of a registry system.

FIG. 2 illustrates an example screen display for an applications/content portal.

FIG. 3 is a block diagram illustrating one embodiment for the registry system.

FIG. 4 illustrates example information for a television-based applications/content registry.

FIG. 5 illustrates an example search displayed at a third party portal.

FIG. 6 illustrates an example screen display for a television-based user interface for a registry browser.

FIG. 7 illustrates an example screen display for a computer-based user interface for the registry browser application.

FIG. 8 illustrates one embodiment for a home media system.

SUMMARY OF THE INVENTION

An applications registry provides a repository of television-based applications. In general, a television-based application comprises an application program suitable for operation on a television (e.g., the application displays information and receives input from a television). The registry stores information about one or more television-based applications registered. In one embodiment, one or more servers host at least one portal. The portal allows users to view information regarding the registered television-based applications. In one embodiment, the information comprises a general description of the television-based applications, a description of an entitlement model for the television-based applications, and downloading information to permit a user to download applications to the home media system. In one embodiment, a user accesses the registry, to view information about the. television-based applications, through a home media system. The home media system, which includes a television, accesses the portal over a network, such as the Internet.

The registry provides a means for a user to search for television-based applications. For example, a user may enter one or more keywords to search for television-based applications. In response, the registry lists application applicable to the keywords. The search results may be customized based on one or more criteria. The registry also provides a means for a user to browse the television-based applications. Furthermore, the registry also provides a means for a user to purchase or provision one or more television-based applications.

In one embodiment, the registry may comprise a plurality of portals of the television-based applications. Each portal may be customized to provide either different views of the television-based applications or different television-based applications. The customized portals may be implemented for different customers. For example, a customer may desire to offer, on its portal, only those television-based applications offered by itself and its partners.

The registry includes a user interface to allow a user, through the home media system, to view, search, browse and provision television-based applications. In one embodiment, the user interface is implemented on a television. For the television based user interface, the display and input controls are suitable for a television (e.g., the user receives a “10 foot” user interface experience). In another embodiment, the user interface is implemented on a computer, and the display and input controls are suitable for a computer (e.g., the user receives a “2 foot” user interface experience).

DETAILED DESCRIPTION

An open registry of applications programs and media content for television provides a platform to deliver applications and content to users. In general, the registry system provides a mechanism for application and content providers to submit applications and content. In turn, the applications/content are listed on the registry. The registry provides a mechanism for users to search, browse, and provision or purchase applications/content listed on the registry. The platform for the registry is based on an open standard so as to allow any third party application provider or any third party content provider to register their application or content. In one embodiment, the platform is based on a set of core standards, and utilizes an open application program interface (“API”). In one embodiment, the host of the registry system provides a minimum level of editorial review to ensure that the applications/content are secure and non-offensive. The television-based platform of applications/content is open in a manner similar to Web Sites on the Internet.

FIG. 1 illustrates one embodiment of a registry system. For the embodiment of FIG. 1, the registry of application programs and content is implemented using one or more servers 110. For example, a web server may be used to implement a portal for the registry, and an applications server may be used to implement business rules and logic. Servers 110 are coupled to network 130. Network 130 may comprise one or more types of communication networks, such as a public packet based networks (e.g., the Internet) or a private network. One or more households (150, 160 and 170) are coupled to network 130 to permit communication with servers 110. Each household may connect to network 130 through a high-bandwidth connection (e.g., cable, DSL, satellite, etc.).

As shown in FIG. 1, each household (150, 160 and 170) includes at least one television (124, 126 and 128). The televisions are controlled by remote controls (132, 134 and 136). For this embodiment, televisions (124, 126 and 128) are coupled to, and part of, home media systems (146, 142 and 144). As described more fully below, home media systems (146, 142 and 144) provide a mechanism to run applications that implement a user interface on televisions (124, 126 and 128). Application and content providers submit applications/content for listing on the registry. For registry system 100 of FIG. 1, applications/content 140 are submitted to server 110.

In general, the registry consists of a listing of applications/content for a television-based environment. In one embodiment, the registry includes an application program to permit users to browse, search and provision or purchase applications. The list of applications/content is accessed by users through one or more portals. In general, the portal provides access to the registry, including providing one or more views of the listing of applications/content.

FIG. 2 illustrates an example screen display for an applications/content portal. FIG. 2 depicts an example screen display to show some of the basic functions of a portal registry. FIGS. 6 and 7 illustrate example 10 feet and 2 feet user interfaces, respectively, for use with a browser application for the registry of the present invention. A browser application allows the user to browse the registry from a television and a computer through implementation of the 10 feet user interface (television) and the 2 feet user interface (computer). In general, a portal for the registry permits a user to search, browse, locate and deploy applications/content for a television-based environment. In one embodiment, to implement a search feature, a user enters one or more keywords related to the application. For the example shown in FIG. 2, a user enters the keywords “Television Games.” In response, the registry lists all applications/contents that relate to “Television Games.” The example portal of FIG. 2 also shows viewing applications/content based on “Latest Releases”, “Most Popular Releases” and “Least Popular Releases.” An example portal further permits users to submit reviews and to read reviews by others. In another embodiment, the user may search the list of applications/content by categories.

The registry permits users to launch applications. Through use of the home media system (FIG. 1), a user may launch an application from a television or launch an application from a personal computer. In one embodiment, the applications are remote applications. In general, a remote application is executed on a computer platform remote from the implementation of the user interface. For the registry, a remote application may be launched on any computer across the network for implementation on a media device at a household. To this end, the registry provides locations of the listed applications to execute the applications remote from the users' households. The applications of the registry may also be downloaded to households. Under this scenario, the registry provides a means for a user to download the application to a computer at the household.

FIG. 3 is a block diagram illustrating one embodiment for the registry system. One or more portals (310) are generated to access the registry. A portal may comprise an Internet Web Site. The user obtains access to the portal(s) 310 through either a private and public network. The user accesses the portal, via a computer, to search, browse, access and launch applications. In one embodiment, the registry system may support multiple portals. Each portal may be customized based on an underlying set of criteria. For example, the host of registry system may customize portals based on customer requirements. A business method for generating customized portals for customers is described more fully below in conjunction with a description of FIG. 5.

Database 146 stores information about the applications/content offered on the registry. For example, database 146 may store the title, description and entitlement model for each application. An example of information associated with applications on the registry in shown in FIG. 4. Application logic 320 processes information on applications/content for display and access by portals 310. Application logic 320 may comprise one or more rules that govern the presentation of applications/content on a portal. For example, a user may search for applications using a key word search engine. Application logic 320 determines how the results of the search are presented. For example, application logic 320 may present results on relevant applications/content based on pay for placement criteria. In a pay for placement search results system, the ranking of the search results is determined based on an amount the vendors pay the search portal to list the vendor. In another embodiment, a vendor may partner with one or more vendors to sell related products. This vendor, as a customer of the registry system host, may have the products of their partners presented on their portal. Applications logic 320 may apply any rule or criteria to determine presentation of the applications/content to a portal without deviating from the spirit or scope of the invention.

The host of the registry receives, form third party application/content providers, a description of the application/content. In general, the applications/content descriptions provide information about an application for storage in database 146. In one embodiment, the application/content descriptions identify: information regarding the application/content; network locations that point to portions of the application/content for downloading; and the entitlement model for the application/content, etc. The host of the registry provides the XML definitions. In one embodiment, the description comprises an eXtensible mark-up language (“XML”) application/content description. As shown in FIG. 3, XML application/content descriptions 330 are input to XML parser 340. In general, XML parser 340 processes the XML application/content descriptions for entry of the application/content into the database 146.

FIG. 4 illustrates example information for a television-based applications/content registry. The example table of FIG. 4 shows, in the first column, a name for the application/content. The first row of the table contains information for the content “Skydiving Channel.” As shown in the columns of FIG. 4, “Description”, “Icons”, “Categories”, “Keywords”, “Rating”, “Author”, “Entitlement Model”, and “Payment” information is provided for each application. For example, the description information for the “Painting Program” includes “Artistic software permits applying electronic paints to canvas” as shown in the second column for the “Painting Program” application. Icons, displayed with use of the registry browser application, are stored as depicted in the third column, labeled “Browser Icons.” The application icons, shown in the fourth column, are used when the application is downloaded and installed in the user interface (i.e., 2 feet and 10 feet user interfaces).

In one embodiment, the host of the registry defines “n” categories for browsing applications/content in the registry. The categories are used in the user interfaces as a means for users to browse applications/content. The categories may be arranged hierarchically, such that some categories are arranged in a parent-child relationship. For example, a parent category may be created for all applications, and one or more child categories may be created for types of applications. For the embodiment of FIG. 4, the third party application/content provider also submits one or more keywords associated with the application/content as shown in the table of FIG. 4. The registry utilizes the keywords to perform key word searches. If the user submits a query with one or more keywords that matches one of the keywords associated with the application/content, then that application/content is returned in response to the query.

In one embodiment, the information associated with applications/content includes rating of the application/content. For the example shown in FIG. 4, the ratings are based on a “star system” (i.e., the higher the number of stars associated with the application/content, the higher the rating). In one embodiment, the ratings are editorial ratings from area experts or customers of the registry host. As shown in FIG. 4, the information of the applications/contents further identifies the author (e.g., “J. Smith” is the author of the application “Big Eraser”).

The information accompanying the applications/content further includes the entitlement model. An entitlement model defines the conditions of use of the applications/content for the user. For example, the entitlement model defines the cost of an application/content. It may also specify a period of use for the application/content (e.g, the application/content is valid for one week), or it may specify a number of times that a user may consume the application/content (e.g., the application/content is valid for a single viewing). In other embodiments, the entitlement model may specify terms for user subscription. The last column in the example table of FIG. 4, labeled payment, specifies one or more payment options for the user.

The type of information stored in the table of FIG. 4 is exemplary, and the registry of the present invention may include any information related to the applications/content without deviating from the spirit and scope of the invention.

In one embodiment, the host of the registry may permit other parties to create their own specialized application/content portals (e.g., third party portals). For this embodiment, the host of the registry applies application logic (FIG. 3) specific to the party's portal. For example, the third party portal company may desire to only offer applications/content of their business partners. For this embodiment, the registry host programs the application logic to filter the display of the business partners on the third party portal.

FIG. 5 illustrates an example search displayed at a third party portal. In one embodiment, a user may select categories. In response, the system displays all applications/content associated with the category. For this example, a user selects the category “Travel & Leisure.” In response to this category, the host registry system, using the database 146, identifies all applications/content classified in the “Travel & Leisure.” Table 526 of FIG. 5 lists example applications/content classified in the “Travel & Leisure” category. Specifically, the “Skydiving Channel”, “Travel Channel”, and “Greatest Sports Channel” are content classified in the Travel & Leisure category. The applications identified include “Pong Game”, “Golf Game”, “Home Shopping”, and “Chess.” A third party portal, entitled “Television Game Portal”, provides television-based application games. For this example, the host registry applies application logic to present on the third party portal only application games. Thus, in response to the user's query, the host registry selects the “Chess”, “Pong” and “Golf” games for display at the third party portal as shown in table 530 of FIG. 5. Any rules or application logic may be applied to the open registry to provide third party portals with out deviating from the spirit or scope of the invention.

As discussed above, the user may browse the registry for applications/content. In one embodiment, the user may browse the registry from the television. The television based user interface, referred to as a 10-feet experience, presents screens suitable for viewing on a television. For example, the size of the font displayed on the television is large enough so that a user may view the characters on the television. In addition to the size of characters displayed on the television, user input is suitable for input by a remote control device. For example, the user does not enter substantial text using a media based remote control device.

FIG. 6 illustrates an example screen display for a television-based user interface for a registry browser. For this example, the screen display includes a number of selections to browse the registry. The user may browse the registry by “Categories”, “Name”, “Content Listings”, and “Applications Listing.” If the user highlights an item and presses a right arrow key on a remote control device, the browser application displays a list. For example, if the user highlights the “Categories” menu item and presses the right arrow key, then a list of categories for the applications/content is displayed. Similarly, for this example, the user may view lists of the applications/content by name, view all of the media content or view all of the applications. The screen display of FIG. 6 is merely exemplary of television based user interfaces, and any television based user interface may be implemented to browse the registry without deviating from the scope of the invention.

In one embodiment, the user may also browse the registry using a “2-feet” user interface experience. The 2 feet user interface is implemented on a computer (i.e., the user sits approximately 2 feet from the computer screen). In contrast with the 10 feet user interface experience, the computer-based user interface may display more information with smaller font. Using a computer-based user interface, the user has the ability to select small areas of the screen with a cursor control device (e.g., mouse). The user may also enter text using a keyboard.

FIG. 7 illustrates an example screen display for a computer-based user interface for the registry browser application. For this example, using a computer system keyboard, the user may type text in a dialog box to enter editorial comment about an application. FIG. 7 illustrates an example screen for a computer-based user interface; however, any computer-based user interface features may be implemented for the registry browser application.

The television-based applications, including the browser application, are deployed through a home media system. In one embodiment, the home media system uses a client-server mechanism to implement the user interface of an application on a television. The architecture of the remote application system comprises a three-tier system: the central server infrastructure, the home media system server and the home media system client. The home media system includes at least one server, a network, and at least one client. The client portion, referred to as a digital media adapter (“DMA”) or digital media player (“DMP”), operates as a client to interface media devices to the system. For example, televisions 124, 126 and 128 may be coupled to a DMA to provide full functionality of services available on the home network to televisions 124, 126 and 128 (FIG. 1).

FIG. 8 illustrates one embodiment for a home media system. A computer 204, digital media adapter (“DMA”) 202 and home network 206 are shown in FIG. 8 as an example home media system 200. Home network 206 couples computer 204 to DMA 202. For example, home network 206 may comprise a network implemented in accordance with standards, such as Ethernet 10/100 on Category 5, HPNA, Home Plug, IEEE 802.11x, IEEE 1394, and USB 1.1/2.0. DMA 202 integrates television 124 into the home media system. Although the example home media system of FIG. 8 shows a DMA coupled to a television, the home media system may include multiple DMAs that operate as clients for multiple media devices (e.g., televisions, stereos, CD players, DVD players, etc.). Also, DMA 202 may be implemented directly onto television 124.

The server portion of the home media system may be implemented using a computer or a media server device. In one embodiment, an application program (e.g., registry browser application) is run on the home media system to implement a user interface on a television. For this implementation, the server remotes a user interface for the application to the client. The DMA client (202), interpreting the remote application, implements the user interface on television 124 (i.e., the DMA 202 renders UI screens on television 124 and interprets commands from the remote control 132). In one embodiment, the server (204) remotes the user interface of an application to the DMA client (202) via an open standard protocol (e.g., XRT).

The registry system may be implemented in either hardware or software, or a combination of hardware and software. For the software implementation, the registry system is software that includes a plurality of computer executable instructions for implementation on a general-purpose computer system. Prior to loading into a general-purpose computer system, the registry system software may reside as encoded information on a computer readable medium, such as a magnetic floppy disk, magnetic tape, and compact disc read only memory (CD-ROM). In one hardware implementation, the registry system may comprise a dedicated processor including processor instructions for performing the functions described herein. Circuits may also be developed to perform the functions described herein.

Although the present invention has been described in terms of specific exemplary embodiments, it will be appreciated that various modifications and alterations might be made by those skilled in the art without departing from the spirit and scope of the invention. 

1-20. (canceled)
 21. A method for providing a portal for accessing an application registry to a user device, the method comprising: receiving, by a server, a request from the user device to view data stored in the registry, wherein the data is related to a plurality of applications; transmitting, from the server, the data related to the plurality of applications to the user device; receiving, by the server, a selection of one of the plurality of applications from the user device; and in response to receiving the selection of one of the plurality of applications, transmitting, from the server, data related to procuring the selected application to the user device.
 22. The method of claim 21 further comprising: receiving, by the registry, data related to an application from an application source; and storing the data related to the application in the registry.
 23. The method of claim 22, further comprising: receiving the application from the application source; and storing the application in the registry; wherein transmitting data related to procuring the selected application to the user device comprises transmitting the selected application to the user device.
 24. The method of claim 22, wherein the application source is a third party application source.
 25. The method of claim 21, wherein the portal is accessed over a communications network.
 26. The method of claim 21, wherein transmitting the data related to procuring the selected application comprises transmitting a network location of a portion of the selected application from which the portion can be downloaded.
 27. The method of claim 21 further comprising executing the selected application as a remote application on a computer platform remote from the user device and implementing a user interface of the remote application on the user device.
 28. The method of claim 21 further comprising executing a portal application as a remote application on a computer platform that is remote from the user device and implementing a user interface of remote application on the user device.
 29. The method of claim 21, further comprising providing, to the user device, access to a customized portal providing a set of applications, the method further comprising: receiving, by the server, a request to view data related to the applications provided by the customized portal from the user device; and transmitting, from the server, the data related to the applications provided by the customized portal to the user device.
 30. The method of claim 29, wherein the customized portal provides a particular view of the applications.
 31. The method of claim 29, wherein the customized portal provides a particular set of applications.
 32. The method of claim 21 further comprising: providing, by the server, a category within the portal to the user device; receiving, by the server, a selection of a category from the user device; and transmitting, from the server, data related to applications belonging to the selected category to the user device.
 33. The method of claim 32, wherein the category provided by the server is based on a criteria received from the user device.
 34. The method of claim 32, wherein the category provided by the server is based on a criteria received from a third party.
 35. The method of claim 32, wherein the portal comprises a plurality of categories, and the plurality of categories are arranged in a hierarchy.
 36. A system for providing a portal for accessing an application registry to a user device, the system comprising a server configured to: receive a request from the user device to view data stored in the registry, wherein the data is related to a plurality of applications; transmit the data related to the plurality of applications to the user device; receive a selection of one of the plurality of applications from the user device; and in response to receiving the selection of one of the plurality of applications, transmit data related to procuring the selected application to the user device.
 37. The system of claim 36 further, wherein the server is further configured to: receive data related to an application from an application source; and store the data related to the application in the registry.
 38. The system of claim 37, wherein the server is further configured to: receive the application from the application source; and store the application in the registry; wherein transmitting data related to procuring the selected application to the user device comprises transmitting the selected application to the user device.
 39. The system of claim 37, wherein the application source is a third party application source.
 40. The system of claim 36, wherein the portal is accessed over a communications network.
 41. The system of claim 36, wherein transmitting the data related to procuring the selected application comprises transmitting a network location of a portion of the selected application from which the portion can be downloaded.
 42. The system of claim 36, further comprising a computer platform remote from the user device, wherein the computer platform is configured to execute the selected application as a remote application.
 43. The system of claim 36 further comprising a computer platform that is remote from the user device, wherein the computer platform is configured to execute a portal application as a remote application.
 44. The system of claim 36, wherein the server is configured to: receive a request to view data related to the applications provided by a customized portal from the user device; and transmit the data related to the applications provided by the customized portal to the user device.
 45. The system of claim 44, wherein the customized portal provides a particular view of the applications.
 46. The system of claim 44, wherein the customized portal provides a particular set of applications.
 47. The system of claim 36 wherein the server is further configured to: provide a category within the portal to the user device; receive a selection of a category from the user device; and transmit data related to applications belonging to the selected category to the user device.
 48. The system of claim 47, wherein the category provided by the portal is based on a criteria received from the user device.
 49. The system of claim 47, wherein the category provided by the portal is based on a criteria received from a third party.
 50. The system of claim 47, wherein portal comprises a plurality of categories, and the plurality of categories are arranged in a hierarchy. 